Skip to main content

Full text of "ZXir QLive Alive"

See other formats


- - - , - 

- 



5- 



, - — Mtih Mix uiliisel p 





.err (ISraitps J€e 



sletter 




1 " 



3 



ADDRESS Routines 

2 Information and Chairmen — TreaSury NoteS 

Input/Output hyAbedKahak 

6 CATUG 

6 Sinclair E-Mail "List 

7 QL Users E-Mail Database 
From the Chairman's Disk — Donald Lambert 

FILES 

74M ASCII Text Filter TS-2068 - David Solly 



ADDRESS 

II 

14 
15 

IS 



FILES 
How to Hack on the ZX Spectrum 

Memory Improves With Age WDJUP 

BankS witching - WDJUP 

SUBROUTINES 
Unclassified Ads 




ZXir QLive Alive! © 
Established 1991 The Timex/Sinclair North American User Groups Newsletter 




nTormation 



We wish 10 support the following 
platforms 



7V q/i/gi tc innf. 



Spectrum, TS-2068. Z88 and QL If you 
have any questions about any of these fine 
Sinclair's, contact the: 

Chairman 

Chief Motivator 
Donald S, Lambert 
738 Gtinnar Lb. 
Forsyth, IL 62535 
(217) 875-8043 



ice- 



airmen 



Z88 Library 

Dave Bennett (HATSUG) 
1275 Timber View Dr 
Mechanicsburg, PA 17055-9146 
717 732-4374 

QL Hacker's Journal 

Timothy Swenson 
2455 Medallion Dr 
Union City, CA 94587-1914 
swensontc@geocities . corn 

TS-2G68 

Rod Humphreys (VSUG) 

10984 Collins PI. 
Delta, BC V4C 7E6 Canada 
604 583-2819 

QL PD Library 
John Donaldson (CATUG) 

835 Foxwood Cir 
Geneva, IL 60 134- 1631 
630 232-6147 

AERCO & Z80 Emulator 
Keith Watson 
41634 AmberlyDr 
Mt. Clemens, MI 48038 

BBS — ==GATOt==— 

Bob Swoger (CATUG) 
613 Parkside Cir. 
Streamwood, IL 60107-1647 
630 837-7957 Work 847 576-8068 



Any of the above can also be 
reached by E-Mail through the 
Club BBS 847 632-5558 



ZXir QLive Alive! 

Is the newsletter of T/SNUG, the 
Timex/Smclair North American User- 
Groups, providing news and 
software support to the T/S com- 
munity in a VOLUME of four 
newsletters per year; beginning with 
the Spring (March) issue. 



T/SNUG's main goal is to 
preserve and encourage the 
use of Sinclair computers 

by providing an open 
forum for the exchange of 
knowledge, building and 
maintaining of software 
libraries. Providing 
vendors, repair service and 
members with free ad 
space. 

It is the user groups and individual 
subscribers, rather than the vendors, 
that provide the pecuniary support 
for this newsletter. Vendors and 
developers receive this newsletter 
free of charge, though contribution 
from vendors and user groups is 
gratefully accepted. Please support 
our vendors and service providers 
whenever possible 

If you have a problem or you have 
solved a problem, please share it with 
the rest of us Mo problem will be 
considered unimportant. 

Editiftr/Trcass! rer 
Publisher 

ou can keep T/SNUG alive by 
an annual contribution of $12 
for one VOLUME made payable to 
Abed Kahale Send check to> 

ABED KAHALE 
3343 S FLAT ROCK CT 
SIERRA VISTA AZ 85650-6874 

520 378-3424 

Back copies are available for 
$1.00 each postpaid. 

As of June 8 , 2000, we have a 
balance of $903 



Article 

CiinfrHiiifgiiiii 

Send in your articles by disk, hardcopy mail, or 
e-mail and your inputs to: — 

Abed Kahale 
E-mail: AKahale@compuserve.com 

*W etc&me 

UilTilC Ale m Iters 



GAT© 



9. 



% o better inform the Sinclair Community, three 
24-hour a day BBSs are now provided to serve 
you. You are encouraged to exchange mail and 
use the files sections of these boards. Bulletins and 
ads are available to all. 

Q-Box BBS 810 254-9878 

Utica, Michigan 

SOL BBS 520 882-0388 

Tucson, Arizona 

Club BBS 847 632-5558 

Arlington Heights, Illinois 

LLIE8PH6ES 

http://u sers. aol . clubbbs/tsn ug/ 
http://www.outlawnet.com/~jboatno4 

I f you know the Internet E-Mail address of a 
Sinclair user, but do not have access to Internet 
simply address your E-Mail to GATOR Sinclair on 
the 24-hour Club BBS and include the name and E- 
Mail address of the user you wish to reach Then 
check the Club BBS from time to time if you expect a 
reply. 



w 



e encourage you to exchange mail and 
contribute to the UPLOAD section Call and 
register using your first, last name and phone number- 
along with a password you won't forget Write It 
Dmm! Do not try to do anything else at this time. 

When you call-in the next time, you will have 
Level 5 security and be able to enjoy full 
user privileges. The BBS has smaller sections called 
conferences Select 41 J for "Join a Conference" 
Select "TIMEX" to get into the Sinclair Section The 
mail you then read will only be from other- T/S users. 
Use extension .ART for articles, ADS for ads and 
.NWS for news when UPLOADing. 

For help, contact the SYSOP, Bob Swoger, by 
leaving a message, mail, E-Mail or phone 
CENG 1 08@email.mot com 



ZXir QLive Alive! 



Summer 2000 




Hello Abed 

Thai last jpeg (diag. 4) doesn't have the minor 
correction of the missing "INT" after the "<>." 
Sorry for causing you the trouble of a correction . Take care, 
Joe Rampolla 

What a wonderful website? I've been T/S 7 n since 
1984. My system includes a 2068 LarKen disk system 3.5 
and 5.25 floppy, Aerco Parallel, Westridge (silver case) 
2050 modem. Haven't gotten around to building the RGB 
interface yet(l0yrs . Wd like to build up a 1000. I have a 
box full of them with printers and 4 or 5 modem 
boards, but I need ai least one RS232 port made so I can 
do 1200baud and upload software to P C. more later 

Neil 

(904)740-9 1 0 .1 Printmaxx _pxx 1 (Sjnetzero.net 

Hello Abed; 

In reply to your kind letter of Nov 21, I have Just 
gotten off the dime and sent off seven boxes of Sinclair 



stun to Jack Boatwnght m Bend, Oregon, including ZX- 
81 's and a Timex 1000 with extra memory, a TS2068 with 
5-1/4 floppies using Aerco system plus lots of old 
publications and spec, sheets. 1 talked with him before 
sending this load and he really seemed to want it. He is only 
53 years old so he should have a good chance to put 
together a history of Sinclair computers. He started with a 
ZX-8,1 and then later a TS-2068 Just like me and he also 
has a QL but had not used it yet. He said that he would 
share the things he did not need with others who wanted 
them, 

1 have not any further information about getting a 
working copy of Assembler Work Bench by Zita Soft for 
my QL 1 have the program copied to my floppy but it 
needs the original tape as the security key The original tape 
jammed so it was useless and 1 cannot load the program 
without the security key This is a QL program that came on 
micro-tape. 1 wrote a letter to Zita Soft in England but they 
never replied, They must be defunct.. Is there someone I 
should write to in Europe that might be helpful or the 
internet? 

Yes, I have to get. up to date and get on the int er net so 
we all can communicate with each other. ! have the 
equipment with Windows 95 but I have to make space to 
assemble it with printer, etc. That is why I have been 
cleaning out old computer stuff to make room for new 
computer stuff that will quickly get out of date. I am 
keeping my QL which works well and I can still program it 
easily. Are you keeping the ZXir QLive Alive still? 

John Pegram 
1 126 Stradella Rd. 



rnn A ... 



Cr]o. s /"* A Oft/177 



I contacted Bill Cable, and he may have a copy of 
Assembler Workbench, but he suspects his tape is in the 
same condition 

AI Feng 

RE Byte-Back Advertisement 

I didn't realize you were still running the ad. I'm still 



here and still have an attic full of stuff, but haven't heard 
from anyone in two years from the ad. Don't bother 
wasting the space Thanks 

David Leech 

Hey! I just visited your Site 

http;//www-out.lawtiet \coin/~jboatTio4/welcome.htm, 
and found it quite interesting Vm running this program 
called Hamster AOS which pays up to 20 cents per' unique 
visitor & 5 cents per click on TEXT ADS which can fit 
right into your site perfectly . 

We cut checks to our webmasters EVERY Friday and 
I'm sure you will be very interested . 
Check us out @, http ://www.hamster.com 
If you have any questions email me atjack@hamster. com 
Hope to see you on our program soon! 

Jack 

bi.tp. // www. hamster, com jackf^hamster. com 



Hello Abed: 

Thank you for your letter of March 23, 2000 in which 
you contacted John Donaldson and A3 Feng I hope one of 
them may have a working micro-tape for the Zita 
Assembler Workbench 1 will write to each of them to see 
what they may have to say. 

As you knows I am still using my QL and will still use 
it even after getting my used PC up and running. So I will 
be interested in all that goes on in the Sinclair world . With 
best wishes, 

John B. Pegman 

.Abed; " " " 
I hope diis finds you and yours well. I forgot to 
include my email address in the article on the interface. 
Have you heard anything from the TS community that 
shows an interest in experimenting with this puppy? 1 need 
to know if I should press on with a PCB or tinker on with 
my proto 

I have been rather busy lately and will be until the end 
of April (my son. is getting married them) so I won't have 
much time to work on the 2068 stuff .1 have been 
proceeding with ray disassembly of the 2068 ROMs to see 
how to load and save using other "'channels." I have sussed 
most: of the EXROM routines that do this. I have also 
found the routines for the ERASE, FORMAT, CAT; and 
MOVE keywords - they just call, the ON ERROR handler if 
interpreting, I have been toying with the idea of modifying 
the present; 2068 firmware to make it better use the 
interface. I am thinking that the expanded 2068 would use 
an OS that was optimized for a. bank-switched machine and 
slave better nooks to add device drivers. 

1 have been playing with my Z88 lately and have been 
looking at its OZ operating system and thinking that there is 
much there that is useful for the expanded 2068 - especially 
considering that the Z88 was designed from the ground up 
as a bank-switched machine. In addition, it would be 
interesting to run Pipedream or other well behaved Z88 
applications (those that use only OZ calls) on the 2068 

Jeff Barrel! 
XBurreJl(S).endocardial com 



ZXir QLive Alive! 



Summer 2000 



Hi Abed, 

Just a quick note to let you know my new email 
address a bit shorter and easier to remember.. 

I hope all is going well for you and yours I ara doing 
fine. I still get quite a few calls re: TS items. I refer most of 
them to Jack Boatwrigh or to you. I just send a fellow 
named Robert Webster- from St. Louis to both of you. He 
wants to get back into TSing. 

Thanks again for keeping me on the ZQA! mailing list 
via email.. I enjoy reading (i.e.. hearing) the items. I really 
miss not being able to use a TS computer Later; 

Moil Gowen 

aw 723@osfn.org 

Hello Abed, I've gotten my Spectrum computer back 
from John R. Risk. I still have one little problem, I need an 
eight pin monitor cable for a composite monitor. Got any 
idea's where I can find one, or should 1 ran an ad, in the 
next ZXir QLive Newsletter, ft would be great to see it ran 
on a monitor 



and all the software. It has been sitting on my closet shelf 
for years. Do you know if any of your' contacts need such a 
system. Sincerely, 

Tom Parks 
tparks@alhloghomes . com 
www. alhloghomes com/Ioghomecare 
Appalachian Log Care 
!. 1*312 Station West Drive 
Knoxvilie, TN 37922 



PH.: 1-800-726-0708 
FAX: 423-675-2662 



'hank You! 



rtegsrsian 



tinne , 

26 MARSHALL AVE 

AKRON NY 14001 -1016 

PS' ft does seem to power' up okay, but I need a monitor 

cable to get it up and running right ! ! ! 

danesteg@ju no .com 

Mr. Abed, I got your e-mail address from Rod Gowen, 

he said you could put me in touch with John Shepard, I 

need a TS-2068 computer mine has gone out on me. I get a 

screen that comes up to the Timex copyright screen and 

goes no further, if you 1 

would please be kind 111 
.. ... • j> 

enough to help out I would 

be very thankful., 1 talk to 

Ban Elliott and he said 

that it was most likely the 

big square chip on the 

board which he also says 

they are no longer aviable, 

so if you could get me 

another TS-2068 I would 

be very happy... 

Robert Webster 

783 1 Weaver Ave., 

Maplewood, MO 63143 

(314)645-5267 

"rwebs@freewwweb.com 

"@freew wweb. com 

Here are the two 

addresses you should 

try: 

John (Jay) Shepard 
<jshepard@netins.net > 
Jack Boatwright 
<jboatno4@outlawnet c 
om > 

i cart also have 
your request in the next 

(June) Newsletter, if you don't ge t one let m e know, 

Dear Abed, 

1 have a completely new TS2068 system still in the 
box, computer, TS2050 modem, TS2020 recorder, printer 



Thanks for sending me the info.. I have already sent 
Mr. Parks e-mail, and called the 800 number and left a 
message, thanks again . 

Robert Webster 

To: dkl@dpiiv.com 

Good to hear from you. Dave! 

No, I have never heard of the 2040 used with anything other 
than the Sinclair computers. 
Have you seen our Timex Homepages linked from: 
http://members.aoI com/clubbbs 

Dave, it just came to me, there is an Alfacom thermal 
printer that uses. 8" thermal printer that uses generic printer 
commands from an IBM platform machine. Does feat 
interest you? There may also have been a 4" version. 

Dave Lebowitz, found bis ok! TS2040 printer and 
wondered if anyone had ever hooked a TS2040 to an IBM 
platform 



Dear Abed, 

You continue to do a most excellent Job in getting the 




Longaberger Basket Co. Near Newark, Ohio 
World largest basket Guinness Book etc... 

Newsletter out with so much professionalism. Your 
command of the American Language is superb and all of 
the articles in the newsletter are interesting. I appreciate the 
efforts of each and every contributor and our Chief 
Motivator, Please keep up the good work! Best wishes. 



ZXir QLive Alive! 



4 



Summer 2000 



Hugh Scriven 

Thank you, Hugh. 

Dear Abed, 

Lately I've become interested in USB transmission of 
data between PC's and I recalled that in an early issue of 
"ZXir QLive Alive" you had written an article that 
described a set-up that allowed a TS2068 to talk to a PC. 
After looking through numerous earlier issues of your 
newsletters . I found it (in Vol 3 #4 -- Winter 1993). 

While searching through the issues 1 couldn't help but 
wonder if anyone had considered cataloging the articles in 
your newsletter? AND has anyone designed a practical 
computer control for an electronic organ? 

Most of them operate on low voltage (transistorized or 
digitized) so it shouldn't be that difficult and it would seem 
to me that it would result in saving a lot of Timex 
computers from the scrap pile! OK .... "LECTURING 
MODE OFF"!!! Sinclair! y, 

Td be willing to collaborate with anyone interested in 
writing an article. My main knowledge of computers, 
which is quite limited was with the T/S 2068, and my 
"hands-on" knowledge of electronic organs was with the 
Schober and Devtronix organs ... but 1 have access to info 
on a few others Sincerely, 

Fred Henn 
FRED J HENN 
230 N FRENCH RD 
BUFFALO NY 14228-2033 
oranur@iuno.com 

Thanks for the info, Abed I do appreciate it. Tiger 
Computers is touting it as, The World's Hottest Operating 
System AND the wave of the future! One of my reasons 
for being interested is that "Uncle" Give's new laptop, will 
be marketed with Linux? Sinclairiy, 

Fred Henn 

> Linux is excaiient for those who like to get into a 
different OS than Windows and do have sufficient 
computer knowledge to do the work with it. The free 
OS (by Linus To/vaids) is not a "plug-n-play" and 
programs made for Win will not run in it But the 
commercial version that i have seen advertised 

makes life easier for about $50. 

US QL 2000 Show 
Sponsored by QUANTA and NESQLUG 
White River junction, Vermont USA on May 20, 2000 
Bill (Cable) 

1 put portions of your e-mail on the T/SNUG 
Homepage, Bill 

You picked the same day as the Glenside Color 
Computer Fest that 1 have to work on! J shall update the 
T/SNUG homepage to make your ad even nicer as when I 
have time-soon! 

Thanks for the input and I hope you have great 
success - wish 1 could be there. This years QL show sounds 
better than last year's. 

Robert Swoger 

http:/7members . aol.com/ciubbbs/tsnug — ==GATOR==- -_ 

1 wrote to Pegram last week 

I contacted Bill Cable, and he may have a copy of 
Assembler Workbench, but he suspects his tape is in the 
same condition. 



I received an e-mail from Bill Cable Monday morning 
and he said that he would be able to send Pegram the 
requested tape ... 

Al Feng 

Thank you, A! 

Thanks Bob, 

That is very nice. You put some work into that 
(clubbbs@aol.com). Should help get a few more attendees, 
it looks like we will have a good show. Lots of QL notables 
will be there Be nice to see you there too Does your Gator 
nickname have anything to do with University of Florida i 
graduated from there in 1967 

Bill Cabl e 

The nickname GATOR was given to me by a member 
of the Motorola Computer club when I joined in 1984 and 
put a BBS on their PDP 1 1/60 Computer They said "1 
made the swamp livable" 
— ==GA.T OR-= — 

Hi Bob" 

I don't know if anyone is going or not, but I sent a 
copy of your e-mail to John. Dennis might be interested 
but I don't know what his e-mail address is right now I 
will send him a copy as well when I find out what it is We 
don't have the meetings around here like we use to Too 
bad, 1 liked them 

Keith Watson 

Thanks for the feedback, Keith. I sure do miss those 
get-togethers, also We have not had a meeting down here 
since last September. 1 also miss them There is still 
TS2068 stuff I'd like to do but the TIME BANDITS keep 
me from doing these projects Did you visit the T/SNUG 
homepage yet? 

~~==GATOR=--~ 

Hello Abed. 

Last week, 1 received an original and a copy of 
Assembler Workbench from Bill Cable The program works 
perfectly! Thank you so much for finding someone who 
could supply this program to me. 1 am writing to Bill to 
thank him and send along some reimbursement for the 
program 

I am still slowly cleaning out my upstairs room and 
have sent all my ZX81, TS-1000 and TS-2068 stuff to Jack 
Boatwrighht up in Oregon. However, 1 am keeping my QL 
with all its programs as I can program it easily. 1 am 
making room for a PC with Pentium P-90 complete with 
Windows 95 Then I can get on the internet and 
communicate with others who have such an address. With 
best wishes, 

J ohn Pegr am 

HiAbed, 

It was mandatory for me to change fr om @compaq net 
to @email. msn.com since @compaq.net will be 
discontinued as of the i 3th May. On the 8th the new CD 
arrived (I pay nothing till my year is up) for the change over 
but the CD would not work so I finally got on line with it 
after I made several 800# calls. And from Monday Sth for 
two days I could not access any email. Then I was referred 
to www.mailstart.com where 1 could get my @compaq.net 
mail. And for another two days I could not send email till 1 
found out how to do it through mailstart. 1 finally got a nice 
lady at Compaq to step me through the procedure to have 



ZXir QLive Alive! 



5 



Summer 2000 



both @compaq,net and @emai Lmsn.com email picked up 
automatically. I think that is working. 

The fime I planned to spend writing my column was 
spent trouble shooting the changeover. I will get onto it as 
soon as I can what with honeydo projects having a high 
•priority here, i guess oV Murphy is laughing at me. 

So don't forget to put my e-mail address in ZQA as 
dslambert@emaii.msn.com.. 

! was perfectly happy with (g.compaq .net but it seems 
that @emai! msn.com is faster. 

Don S. Lambert 
dsl ambert@emai 1 . msn. co in 

Sooooo, f finally got: oil" my iazzzy butt and sent some 
folks some stuff. 

Luke Perry got Joan Kealy's modem and a gr ab bag. of 

tape SW, with emphasis on DTP wanted to send him 

Lemke's stuff but couldn't find a full suite w/o pawing 
through more than two boxes, but will pursue that . 

Al Feng got a QL to replace one that bit the dust. 

And Gil Parrish got the only AJ Microdrive wi a bunch 

of stringy floppies many with SW. 

I sent all by USPS, with tracking numbers, so via the 
Web so I knew when they received their goodies 

I've heard from the first two, bur not from Gil Will 
ask how it's working after sending this. 

Hope all is well with you and yours and this crazy 
end-of-t he- world weather will settle down for what looks 
like a very hot summer . 

Jay Shepard 

jshepard@netins.net 
Guys, I am sooo glad to hear that the store is finally 
working out foi the Sinclair community needy. Jack, 1 
wonder if you have similar items to report? This would be 
good input for the newsletter. Also guys, is there a spare 
1.6.K Sinclair RAM pack in one of the stores? This request 
comes from dutican(^nriilitary.com (Duncan Haberly) 

{GATOR} ==— ■ 

Hello! 

Sorry my bad English I'm from Argentina, and I have 
a TK85, clone from the TSJ500 I have tapes for TK, and 
convert this to p files (for the Xtenders, ZX81 emulator) 
the problem is the 

Fortress of Zoriac 

I really love this game, but the tape is corrupted, look for it 
in internet, but I could not find it Would you know where 
to find it? I will thank him very much a help Greetings 
from Argentina 

Juan Carpio 

j uanchuscar @y ahoo . corn 

Thanks abed, really thanks you if you need something, 
send me an e-mail, please 

hi an 

(DATIUC3- 

Now Direct jZOpJi! Members 

John Donaldson, QL 

835 Foxwood Cir 
Geneva IL 601 34 



fid.niasn@aoi .com 
6302326147 



Mark Dorlnson, TS2068 

PO Box 351 
Frankfort IL 60423 
74200 2 5 7@compuserve . com 
7087551833 

Cy Herre, QL 

666 S Bluff St 802 
S Beloit lL 61080-2166 
cyherre@aol.com 

Phillip Kwitkowski, TS2068 

2 106 Dover Ln 
St Charles IL 601 74 
kwit80@,ao] . com 
6305846710 

Dean Mikoiajczyk, TS1000 

4714 Arbor Dr #207 
Rolling Meadows IL 60008 
deanm97493 @aol . com 

Frank Mills, TS2068 
417 S 47th Ave 
Bell wood IL 60104-1723 
effem@yahoo com 

Larry Sa liter, TS206.H 

7747 W Bryn Mawr Ave 
Chicago IL 6063 1 
7737635383 

Lee Thoresen, TS2068 
45 Hickory Ln 
Crete IL 60417 
74200.257@compuserve.com 
7086729066 

- -== (GATOR) == — 
Robert Swoger. LarKen, TS2068 

613 ParksideCit 
Stream wood IL 601 07- 1 647 
clubbbs@aol.com 
6308377957 

Sinclair E^M&WMM 



Anderson, Paul 


pander sn@peakpeak . com 


Anson, Gerald 


j en ya@aztec . asu . edu 


Barker Robin 


robm@di-ren . demon . co , ufc 


Bennett, Dave 


Dbennett7@freewwweb . com 


Boatwright, Jack. 


jboatno4@outlawiiet.com 


Boehm, Al 


boehm@zipliniv.net 


Boehm, Bill 


boehm@pih . af. mi 1 


Burrell, Jeff 


JBmTell@endocardial.com 


Burt, Richard 


ajh@intranetca 


C. A. T. S. 


nif:0002@epi : 12.eptlbaito.org 


j Cable/Bill 


cable@cyberportal. net 


| Carpio, Juan 


iuanchuscarf^yahoo .com 


1 Castro Antonio 


castrox@portoweb.com.br 


| Catotti Christopher 1 


kd4ace@compuserve.com 


i Chambers, George 


CTfchamb@pathcom.com 



ZXir QLive Alive! 



Summer 2000 



i Collins, Bill 


bcollsns'V/ihomp \fx net 


! Cottreli Les 


j jacotire{££gte..net 


{ Cruz-Figueroa, Jaime 


cn i?TtPi if^ffiT);}*!! rntn ! 


Dansbv Andrew 


sdansbvtoJatlanf ir npf i 


i Davis, Frank 


! fdavisr^inuest net ! 


j Donaldson, John 


1 i!dnld c ;n/"??)aol com 


) Dorinson, Mark 


' 74900 "7S7( , (7)comni! t ;f i rvp rorr» 


j Dunbar Douslas 


f dldi mhnrrtvJnronifyv n^t 


j Dunnet, Ron 

j. 2 


1 ron/Snuhhfsofi frp^sprvp rn sik 


1 DuPiiv, James 


1 d]innv//?)ninp]iiip mm 


l England Willi am 


i weriflandr^ina rnp mm 

J W.l i.^l&i.iJ^Ut t-£/,lilCl-2 1 l\v . v/v? 1 1 1 


1 Fens Al 




f- — r-f^ 2 : 

S Fink, Mike 


I domino cuhpsf/7)p)ccp( < ?ior npt 


i Fink Mike 


W l sl-I 1 1 .1 V-T . V 1^. O- W 3 \. W/, KJ 1.1 i L !Ji<l.L»lV, V»V> I i l 


1 Firshrnan Tonv 


fonv//73firshiti?i n flt^mon cn 

txjii.y iit/j.111. oiiiiJ.tiri.vJ.wiii\Jii J V-xj , ills.. 


J Franks John 


i til frpinic^Sl^rr iif5<ia c?nv 


J Ganger, Gary 


ujtLll&VJ. ^^Lt> Vi.lti.Cl-. Ul K. * 


j Gilbert, Robert 


ruoan o /'*'/> ^ 7arn n<af 1 


| Gillespie, Doug 


Hfl4"? 1 /^r^PVPf^pH fr/=»pnAi Arjii 


Girni' >s William 


1 W. . j 

oi r?i ii i *i wffFi) h 1 <j <yn\/" 

^ Li. 1 11 LI- ij VV i. Lt^ ^ KJ V 


I Go wen Ro d 


tt VV t .i*t ^* ' " ' V/ Jl 1 1. Ul 5i 
, — — __™ ■ ir£ 


1 Haberl v Duncan 




I Ffarbit Ken 


krhO "\fnic\i\x\ frf^nn rntn 


| "■• ■ ■■ — — 

I Henderliarht Mike 

■■■■ ... i«t v-2 , 




1 Henn, Fred 


orannn//)iijnn com 


i Herre Cv 




Holmeren Paul 




FToiton Will 


wiHhnnrz/i^inl rnin 


Hoshor, Dave 




I FJuinohrevs Rod 


rori h/^/Ji ( o ht^nppH hp p^ i 


FJunkins James 




Imoellizerri John 




Jaao Matthias 




Jonas Mike 




lories Diiwvn 


diiwvn innp'v('//jrii «Aftnpt rn iii^ 5 
viij vv y u,jvJiivo\tt/Vi|. ^vjiiiivL.^/v/. Lift 


Jones, Terry 


i.j w 1 1 v o VJ^y *• * *■**■* J.11C . vU 1.1.1 | 


Kaczor, Jon 




Kahale Abed 


ft k a n ft I p/J?) mtn i «prvp rotir^ I 

<*.lVCUi<ll.W\><<^\JixI|Jt43v^ V v. will f 


Kealv Harriet Joan 


hikpalvfTrJ^riniir, hilronpt paiti i 

i ij riV'CH^ vi^vCtvlI.lllIl. I1.HVV? 1 ICl. ^jXJls i j 


Kenny Larrv 
— : — _i? <f 1 


IfirivPri/iTi^lrirtTj e& \ 


Kineslev Ed 

■ V i , ., 1 


wvJ.iv~Uuty / t*,v/ & . KvV ill. 


fCnvszek Theodore 




Kondrac Mike 


niJra nrfrarfWan} rnm 

l iiiVti-ii uii. 'av\i'&> f 'avri., vv til 


Konisi Lfrs 


jirc knpnj^f^noTnrf^ta ch 


KurtK7 


Inu't k7//5)?in! mm 


fCwifkowski Phil 1 in 


IdAfttROfTjifini mm 

IS. W t.lOvi iAJ.OXJ V. vV^Il 1. 

M „ « 


Lambert Donald 




Lancaster Garrv 


fiharkhia^dlplnhi mm 

Ullu.1 IVili^ci^W,/, \X. w 1 LV . uV 111 


Lanciault Francois 


fi'ancois.iaiiciaultf^energies.alstoin.ca 


Lassov David 


pmanonf/5)fl7<;f arnpt rnrti 


LaVeme Melvin 


mla vprnprt5)i]sit npt 

11.1 I CL V tiV'\tX^Ci.£J«.t. . t IVj L 


Lebowitz Dave 


dk!//7)dn]iv rotn 


Lessenherrv Garv 


ffi74-l/'(7)firil mm 


Lewis Jim 


!lewi<2//?)npo loin com 


Liebert-Adelt Peter 


A ^— *-= 1 

n liphprr//7)t-rvnHrip rip I 


Malloy, Bob 


74776 2342(@comnusei*ve com 


McBrine, William 


wmcbrinefSclark.net \ 


McKelvey, William 


^ 1 

mckelveyw@delphi.com 



} Mpr? inrhpn 


i t y\ f*V7f7y) t~— i~\ 1 1 1 1 n p A p 
| lllCi Z-Ui/.L~wiilliiC. tlC 


j Mikolajczyk, Dean 


d.eanm.97493 @.aol . com 


j Miller, Seymour 


™ 

j sey mil@,deiphi . com 


1 irjiira, rrdLJA. | eiieni(tuyanoo.coni 


1 sviuiri, dud j ooDtceepti i ^.aoi.com 


j i ionon, ijary i gnonon(«iw on a. stu.com 


1 1 diiiMi, vxu j gii.pa'risn{«/,aDdnet.org 


[_ i ■;- ^ ° . 


rayne, josn j j0Siipayne{tfiui groot.com 


Pazmino, John j john.pazininoijaimoondog.com 


Perry, Luke j doidy34tSyahoo.com 


Perry, Russ Jr i siapdash(a)enteract.com 


Radlorf, Toby j tobyradlofF(S,webtv. net 


Rampoila, Joe I jprampolla@blazenet.net 


tvigicl. Will 


ngter(tycatc.iiet ; 


Rish, John 


7460 1 . 1 53 5@compuserve.com 


j Shepard, Jay 


jshepard@netins.net 


! Simon, Thomas 


73 1 77.333@compuserve.com 


| Skapinski, Thomas 


tslcapins@j uno. com 


| Solly, David 


ac355@n.cf.ca 


j Stegman, Dan 


danesteg@juno.com 


j $ wen son, Tim 


swensontc@geocities com 


1 Swenson. Tim 


swensont@sir"cli ve. csd . sgi . com 


r 1 

f Swentko, Wally 


vvs went ko@rnaroon .tc. umii . edu 


1 Swoger, Robert 


ceng i 08@emad . mot.com 


Taylor, Jeff 


j ei.aylor@mdrobof.ics.ca 


Thoresen, Jeff 


74200.257@compuserve.com i 


| Waidman, Stephen 


l.)iogme@hotmai.l.com 


| Walterman, Don 


waiter m@ix. netcom com 1 


Watson, Keith 


keith watson@juno.com 


Wood, Roy 


qbranch@qbran.ch.demon..co.uk. ] 


Zimmerman, George j 


gzi rn m er 92 8 @ ao 1 . com _J 



OB. 



LM LM m UK 



EnBil dsfe^sa 

Welcome to the Web Based 
QL Email Users Database. 
Your email details have now been added to 

the database. 
If you have a password you are now able to 
access the database and modify/delete your 

own record. 
Should you forget/misiay your password, use 
the *forgot* facility on the database search 
page to email you a new one. 
If you do not have a password, go to 
www.quanta.uni.ee and enter the database. 
Enter your email address and press submit. 
You will then be emailed a password. 
Regards 

Quanta Support 
www.quanta.uni.ee 

Sender: wwwru n @ w ww jaki n te rn et . co . uk 



£Xir QLive Alive! 



Summer 2000 



From The Chairmans Disk 3 



Donald S. Lambert 



f"""l 1 y plans to get things done T/S computer wise 
I \ v H ^ ot sidetracked by honey do projects one of 




which was a biggie, 

That was to do some landscaping in front 
of the house If we had gotten the proper 
amount of rain the ground would have been soft. But it 
was hard as dry clay can be. I finally got that done 
although there were several trips to LOWE 1 S (which is 
about a half mile away) to get plants, border stones and 
such A place nearby delivered a yard and a third of small 
river polished, stones to put down, 

Not to forget all the trips to school events with our 
youngest grandchild and her activities in band, chorus and 
ballet. We will go to her graduation from middle school 
(8th grade) the twenty fifth of May . 

bile I did not get a copy of the program to accept 
the upload from the LASER PCS to a PC 1 did get 
PC TOOLS 7 1 which includes such a program 
The set includes eight disks (720K 3 5) and ten manuals . 
When f have time that 1 won' t be interrupted for several 
hours I will load them into the PC and try that out 
One of the interruptions has been tornado warnings wince 
we live in tornado alley. None have touched down and did 
damage near us one of the employees of STAPLES which 
is on this side of LOWE's saw a funnel cloud came down 
but it went back up before it got. to our area When we 
have storms I do not use the computer 

have learned that most of my troubles with the PC have 
been the fact: that they don't use the same words as 
Tiinex/Sinclair did. For instance a directory on T/S is a 
FOLDER on the PC and FAT (File Allocation Table) are 
disk sectors. There are other such changes of terms. 

lost a week when 

Compaq.net quit and I was 
switched to MSN. I had paid 
Compaq.net a year in 
advance and there is no 
money difference till after 
that is up. BUT, The CD that 
was sent to make the change 
didn't work. 

called Compaq tech and 
they didn't know what was 
going on So I called MSN 
and I was requested to use 
the MSN signup that was on 
my computer in Windows 
Desktop That got me loaded 
with MSN However! I now 
had a password problem and 
a conflict of opinion by both 
Compaq.net and MSN as to 
who was in charge of getting 
me on line And part of the 
trouble was the fact that I had 
used a 6 character password 
with Compaq not and I had to have at least an 8 character 
password with MSN So I had added four' characters to the 



Compaq password and neither would accept the others 
password and they could not let me give a different one. 
For two days i couldn't access my e-mail and then the next 
two days I couldn't send any Then I got a nice lady at 
Compaq to step me through the process to got that 



d. So far I have not had a problem with MSN. 



have checked out the Z88 and the DISK-88 (XOB) 
which is the software/hardware for the battery operated 
Radio Shack Portable Disk Drive 2 (battery operated.) 
and found out that one of the two disk drives that I have 
has failed. But otherwise the interface and the disk drive 
operates correctly. But is it of a single sided 3 5 disk drive. 
A disk holds 202,24 K in two directory banks and of 
course it is a low density disk drive. Of course the 
EPROM's are more portable but use up the internal 
batteries far more quickly 

a checked out the LASER PC3 and it works and I got the 
cassette port to operate after i set the volume on the 
recorder at the proper level it is more compact than the 
Z88 but I don't know how long a set of batteries will 
operate the unit 

^pTs oth the Z88 and the PC.3 have serial cables to a PC. 
I^A Of course the PC end is a 25-pin connector since the 
technology was of the late I980's. I have a cable 
made up by MR. FDQT of Smart Computing to go 
between the Z88 and the LASER PC3. Mr. FIX1T is not 
on the staff of Smart Computing and is a helpful person 
much like the people with Timex/Sinclair computers. I will 
have to test out each cable. I have already tested the Z88 to 
PC cable but lost the upload As I learn more about the 
workings of the PC maybe I can get it to work. 
Seems like every time i try something that I end up 



Chiricahua Apache, Left to right: Geronimo, Chihuahua, Nana, Loco, Josanja (Ulzana) 




smdying a half dozen books and get confused by all the 
information. But J slowly learn but get frustrated. 0/0 



ZXir QLive Alive! 



8 



Summer 2000 



Pit 
mi 



mm 



Pnvf 
1 15 A* 



ITii 



#1 1< 



t iilft/'i 



i ll I 



rim 
Hit? 



I *1 



If 1J 



ar 



inir 1 /I 
rOH 1/ 



5 V 



M - David So lly 



^Occasionally, after downloading a text file from an 
1 |eiectronic bulletin board (BBS), or, converting 
v HiSoft® PASCAL source code files into an LKDOS 
file, the file may fail to write to the screen, print, or load 
into M-Scfipt 1 This kind of problem is most often caused 
by rogue bytes which enter the text through line noise, the 
process of conversion, or perhaps from the operating 
system of another word processor, and interfere with the 
Sinclair operating system The following Pascal program, 
once compiled, will quickly load an LKDOS file or an 
ASCII text file, remove from the file any rogue bytes 
encountered, compact the file, and provide the user with 
option of saving to disk by overwriting the corrupted file 
or saving under a separate name. The PASCAL source 
code listed below was treated in this manner. 
LKDOS Files from Sinclair B ASIC listings 

Sinclair BASIC listing mav also be converted into an 
LKDOS file, however, the resulting file may still fail to 
load into M-Script or print on a foil-sized printer This 
is because in addition to the possibility of having picked 
up a few rogue bytes during conversion the listing may 
contain Sinclair block graphics and user' defined graphics 
'These graphic characters pose a special problem because 
they fall neither within the range of 7-bit ASCII nor 
conform to any 8-bit ASCII standard.. It is necessary, 
therefore, to bring all Sinclair graphics into die range of 7- 
bil ASCII before applying the filtering process by using 
this additional piece of code 
1.200 CONST 

L20J5 OFFSET - 79; (* Sinclair 

graphic to 7-bit ASCII *} 
1400 FF ( LETTER IN [128.. 1641) THEN 
1410 POKE ( (START + 

COUNT) , I LETTER - OFFSET) I ; 
|he final result of this piece of coding is to change all 
user defined graphics from UDG 'A' through to V into 
normal ASCII *A' to V" and swop all the block 
graphics for a character between '1 ' and '@\ 



m 
i 



Filter 



Seven Bit kU 

ma ma Ih ilirM Solly 

100 ( * $L- * ) {* COMPILE OPTION, P. 35 IN 
MRMIJAL * j 
110 

1.20 PROGRAM ASC1IFILTSS; 

.122 
1.23 

125 (* STORAGE LOCATIONS FOR LKDOS 
PARAMETERS *} 
130 CONST 

i Au p-mam = 23300 ; 

150 PROGBGM = 23311; 
160 PEOGLM = 23313; 
17 0 

180 START = #A028; C* TEXT FILE LOAD 

BUFFER * ) 

190 NEW START = £3C40? f* TEXT FILE COPY 

BUFFER *) 



200 
210 

220 VAR 
230 

240 ANS : CHAR; 

250 PRINTABLE : SET OF CHAR; 

260 NEWLN, BYTES : INTEGER; 

270 

280 

290 PROCEDURE DOI'T; {* INVOKES LKDOS 
WRITE *) 

300 BEGIN 



310 


INLINE C#F3, 


#CD, 


#62, 


#00, 


#21, 


#04, 


#5B, #11, 












320 


#22, 


820, 


#01, 


#09, 


#00, 


#7E, 


#FE, 


#00, 
















330 


#20, 


#02, 


#36, 


#20, 


#ED, 


#A0, 


#78, 


#B1, 
















340 


#20, 


#F3, 


#3E, 


#0B, 


832, 


#02, 


#20, 


tfCD, 
















350 


sec, 


#00, 


#2 A, 


#0F, 


#5B, 


#22, 


#33, 


#20, 
















360 


#2A, 


tm. 


!15B, 


#22, 


1131, 


#20, 


#CD, 


#CF, 
















37 0 


#00, 


#3A, 


#64, 


#00 f 


#FB) 







0 



iso men 

390 400 

€10 PROCEDURE DIN; (* INVOKES LKDOS READ 

420 8 EG DM 

4-30 THTjm i»F3, #00, £62, $00, #21, 



m 4 , 


#5B, MCI, 












440 


#22, #20, 


#01, 


#09, 


if 00, 


#7E, 


# EE , 


m®r 














450 


#20, If 02 , 


WM t 


#20, 


#ED 7 


#A0, 


#78, 


#81, 














■460 


#20, #F3, 


#3E, 


#0B, 


#32, 


#02, 


#20, 


#C.D, 














470 


#C6, #00, 


«2A, 


80 F, 


#5B, 


#22, 


#33, 


#20, 














480 


#2A, #11, 


#5B, 


#22, 


#3.1, 


#20, 


#CD, 


#C9, 














490 


#00, #3A, 


#64, 


#00, 


#.FB) ; 







500 END; 

510 

520 

530 PROCEDURE SPOUT (C ; CHAR ] ? (* 

PASSES CODES TO THE ROM" k } 
540 BEGIN 

550 IMLim i&m, #21, S3 A, #5C, #D'D, 
#7E, 

560 t, mi) 

57 0 END; 
580 590 

600 PROCEDURE AT fx, 1 : INTEGER); \* 
EMULATES BASIC >M' ") 
610 BEGIN 

620 SPOUT <C£ffif22) ) 7 
630 SPOUT {CNR (X) 3 ; 
640 3 ROOT (CHS \Y\) 7 

650 END; 
660 

670 PROCEDURE CLS; f* EMULATES BASIC 
COMMAND A -) 
680 BEGIN 



ZXir QLive Alive! 



Summer 2000 



690 
700 



PAGE; 
SPOUT 



(CHR{22) ) ; 



(0) ) ; 



7 20 SPOUT « 
7 30 END; 
740 750 

7 60 PROCEDURE GET FILE ; 
770 

78 0 VAR 

7 90 FILENAME : ARRAY {i..9j OF CHAR; 

800 

810 BEGIN 

820 WRITELN; 

630 WRITELN ('FILE TO RETRIEVE FROM 
DISK? ■); 

84 0 WRITELN; 

850 READLN; 

S 6 0 READ ( FILENAME } ; 

8 7 0 POKE ( P ROGNM , FILENAME } ; 

880 WRITELN { 1 HOW MANY BYTE IN FILE? f ); 

8 90 WRITELN; 

900 READLN (BYTES } ; 

9 J 0 POKE {PROSLN, BY5PES) ? 
92 0 POKE \ PROGBGN , START ) ; 
930 DIN; 

940 

950 END ; f * GET FILE *) 
960 9 70 

980 PROCEDURE STORE FILE (NEWLN : INTEGER) ; 

990 
0000 VAR 
1.010 

1020 FILENAME : ARRAY { I. . 9\ OF CHAR; 

1030 

1040 BEGIN 
1050 

1.060 SfRITELN; 
1070 WRITELN; 

1.080 WRITELN ( *NEW NAME FOR FILE? •} ; 

1030 WRITELN ; 

I. J 00 READLN? 

1 I 1 0 READ { FI LENAME ) ; 

1 12 0 POKE f PROGNM, FILENAME j ; 

1130 POKE ( PROGBGN , NEWS TART } ; 

I. 140 POKE { PBOGLN, JSlEWLN ) ; 

1150 DOUT; 

I. 160 

1170 END; (* STQREFILE *} 

II. 80 

1190 PROCEDURE FILTER {VAR NEWLN : 
INTEGER) 7 
1200 

1.21.0 vm 

1220 

1230 LETTER, COUNTER, SCRATCHED : 
INTEGER; 
1.240 

1250 BEGIN 
1260 

1270 PRINTABLE := [ ' 5 , . 5 } 5 j ; 

1280 COUNTER := 0; 
12 90 NEWLN := 0; 

L300 SCRATCHED 0; 

1310 

1320 COS; AT ( II, 3) ; 

1330 ISRITEi 'WORKING 1 KEEP 7ER SHIRT QUI 1 }; 

1.3 40 
1.350 

1360 REPEAT 
1370 



1380 LETTER := PEES ( f START +- 
COUNTER) , INTEGER ) ; 
1390 

1400 {* ENTER HERE Ally SPECIAL ROUTINE *) 
1410 (*• REQuTRED TO HANDLE SINCLAIR *} 
1420 (* GRAPHICS OR 8 BIT CHARS *) 
1425 

1430 IF (CHR (LETTER) IN PRINTABLE) OR 

1.440 {LETTER IN [13, 27 j) THEN 

1450 POKE { (KEWSTART + NEWLN) , LETTER) 

1400 ELSE 

1470 

1480 SCRATCHED := SCRATCHED fl; 
1490 

1500 COUNTER := COUNTER f- 1; 

1510 NEWLN := COUNTER - SCRATCHED; 

1520 

1530 UNTIL COUNTER = BYTES; 

1540 

1550 

1560 CLS; AT (11, 12) ? 
1570 WRITE ( ' FINISHED !'); 
1580 AT(15,0) ? 

1590 WRITELN ( 'NO* OF LETTERS REMOVED: % 
SCRATCHED) ; 
1600 WRITELN ; 

1610 WRlTELBr{*SO. OF" LETTERS COPIED: % 
NEWLN ) ; 
1620 WRITELN; 

1630 WRITELN ( 'ORIGINAL LETTER COUNT: *, 

stress ) ; 

1640 END; (* FILTER *) 
1650 1660 

1670 BEGIN {* MAIN PROGRAM *) 
1680 

1690 REPEAT 
L700 

1710 CLS; AT ( 5 , 0 } ; 

1.720 ftfSiTELN {'SEVEN BIT ASCII FILTER* } ; 
1730 AT (1,0) ; 

1740 WRITELN f T THIS PROGRAM IS FOR 
REMOVING * ) ; 

1 750 SfRITELN f * STRAY CHARACTERS FROM AN 
ASCII' ) ; 

1760 SfRITELN ( ' FILE HHICH EIGHT 
INTERFERE * ) ; 

1.770 WRITELN { ' I'M THE NORMAL OPERATION Of 
A ! ) ; 

1.780 WRITELN ( "WORD PROCESSOR. * } ; 
1790 

1800 GETFILE; 
1810 FILTER I NEWLN ) ; 
1.820 STOREFILE (HEWLN J ; 
1830 WRITELN; 

1840 WRITE ( f ANOTHER FILE? «); 
1850 READLN; 

I860 HEAD (ANSI; 
1870 

1880 UNTIL CANS IN PN% 'n* \ ) ; 
1890 

1900 SfRITELN; 

1910 WRITELN ( 5 TYPE RUN TO RESTART 
PROGRAM* j ; 
1920 

1.930 END. 

* UCDOS is able to convert Sinclair BASIC listings and 
some other types of tofcenized texts into straight ASCII 
text and save them to disk as a sequential file. For this 
article they will be called LKDOS files 



ZXirQLwe Alive! 



10 



Summer 2000 



EUL 



13 



Hi 



Eak on Efi Spaairiiin 



Less Cottreii 



It's impossible to calculate it yourself* because any 
programs you right will mean you get the wrong answer. 
The only way I can think of to get this value is to load the 
game as normal, and stop the game with a Multiface as 
soon as the timer hits 000. Then put a breakpoint at #8C35 
and return Wait a tew seconds, then reactivate the 
Multiface and have a look at the stack The first value will 
be #8C35, the second will be the value of HL you want. 
You should find it's #4DBD Carrying on the disassembly. . 
8C35 21 00 58 LD HL, #5800 



8 C 38 1.1. 01 b 8 
01 WW 02 
3E 36 00 



d n -a n 



i-fA-jf n ~* vj j, 

r n 



8( 



JjjJ 



k..*'w j» rr U a: £ 

(HL) , #00 



8C40 ED B0 LDIR 

8C42 El POP HL 

This clears the screen and restores the value of HL, which 
is used for the following decrypter, 

8C43 1.1 60 8C LD'DE,#8C60 



8C4 6 0.E 29 
8C48 7C 
8C49 65 
8C4R 4 7 
8C4B 09 
8C4C I A 
8C4 D AD 
8C4E 1.2 



LD C, #29 
LD A,H 
LD H,L 

LD B A 



8C4.F 6F 
8C50 13 
8C51 1A 
8C52 AC 
8C53 12 
8C54 13 



LD A, ( DE ) 
XOR L 
LD ( DE } , A 
LD L,A 
INC DE 
LD A, (DE) 
XOR H 
LD (DE) ,A 
INC DE 
8C55 CB 7 A BIT 7,fJ 
8C57 20 WO .IB HZ, I8C49 

8C59 FB EI 
8C5A 67 LD H,A 

8C5B 11 70 71 LD DE, If 7170 
8C5E 1.9 ADD HL., DE 

8CSF E9 JP (HL) 

first of all, POKE #8C40, #8C41 and #8C42 with #21, 
■ #BD and #4D respectively (so you get the right value 
of HL), put a breakpoint at #8C5B (nearest place possible 
to the JP (HL) that we can place a breakpoint), and JP 
#8C40. On return, the value of HL is #38F5. Add this to 
#7170 (which is what happens in the next two commands) 
to get #AA65, This is the start address of the game So put 
a JP to your POKEing routine (anywhere from $5800 to 
#5BA0 is fine) at #8C5B, and finish your POKEs with a JP 
#AA65. 

B| ou will have to do a stack trace to find infinite lives in 
I the actual game itself. There is a complete hack for this 
game by myself in YS #78, so why not; disassemble it and 
have a look It's slightly different to what we've done in 
that it intercepts the RET at the end of the loading system 
rather than mimic the first headerless loader, and puts a JP 
back to the hack at #83C3, but apart from that, it's more or 
less everything we've discussed above put together. 

mm nuiErrs vmrnnm svsTEm 

([ his has been used on a few Ocean games, but is in fact 
8 a standard headerless loader in disguise. The value of 



A to use is always #98 Load in the BASIC loader and the 
first block of code, then stop it with a Multiface, and use a 
stack trace to find out the values of IX and DE for each 
block, and the JP to the game, 

fP> oncluding the look at protection systems, I think it's 
Hjonty fitting that we end in quite possible the most 
famous protection system of all time. 
Speedlock was first written by two guys called David 
Looker and David Aubery Jones around Late 1983, 
although it wasn't commercially used until October 1984, 
on Daley Thompson's Decathlon, by which lime it had 
reached it's third version. Since then, it has been used by 
many major software companies, especially Ocean Its also 
gone many modifications, and can be split into three 
distinct generations. 

If should state at this point that you need to have a 

■ Multiface to crack most of these Speedlocks, because 
they completely disrupt the operating system which will 
lock up any disassembler which relies on ROM routines 
The Multiface relies on its own ROM, which isn't affected 
by the Speedlock code. 

■ ype I - have one or two BASK" loaders, and load the 
9 main code with the infamous "clicking" leader tones 

(you know, instead of a steady "bleep", they go "blip, blip, 
blip, blip" a few times) 

'W ype 2 - have one short BASIC loader, a long CODE 
B block, lots of annoying beeps, then a similar loader to 
Type 1 , minus the clicking leader tones, plus a countdown 
timer 

"W ype 3 - as for Type 2, except, there is just one very long 
I BASIC loader The protection system crashes if a 
Multiface is left switched on. Mazemania on Y'S #77 
covertape used a Type 3 

WQo, let 's start at the very beginning (a very good place to 
lH start) with Type i. fn fact, there are about, four 
different difficulty levels of Type 1 Speedlocks, the 
difficulty goes in chronological order (as you might 
expect). 

V he very first Type Ones were completely different to 
B later ones, having the same initialization routine, but a 
completely standard decrypter. The only differences 
between this Speedlock and an ordinary decrypting loader 
were its initialization routine and its use of the FY register. 
We came across index registers when we first met 
headerless loaders There are, in fact, two index registers, 
IX and IY In BASIC, the IX register is free for use in a 
machine code program run from a USR command, but the 
IY register must always contain the value #5C3A, which is 
the base address of the BASIC system variables which are 
wiped with a NEW command, if you return to BASIC with 
the value of IY anything other than #5C3A, the computer 
will crash, even if you use the "exit to BASIC" feature on a 
Multiface. The value of IY must also be #5C3A whenever a 
BASIC interrupt occurs. Both Devpac and 007 
Disassembler run under' the BASIC interrupts They also 
use built in ROM routines, such as those to check the 



ZXir Olive Alive! 



11 



Summer 2000 



keyboard and print text; this is preferable, otherwise they'd 
have to waste memory rewriting their own versions of the 
routines. Hence the value of iY must always equal #5C3A. 
The only safe way of using the IY register is to disable 
interrupts and write the whole program in RAM without 
using any built in ROM routines And Speediock fits this 
bill exactly, so it uses the IY register tor most of its 



s 



? peedlock code also uses a lot of* undocumented 



I instructions In theory, you cannot split the sixteen bit 
IY register into two eight bit registers. But the processor 
doesn't understand this, and you can split the IY register 
into two if you want , You simply put the code #FD on the 
front of any instructions using H or L. There are no 
standard, names for the two halves of the IY register, but I 
will refer to them as IYH (Hi part of IY) and IYL (La part 
of IY) 

jow let's hack a Speediock game. To start with, I'm 
I hacking Knight Lore, but the following games are also 
suitable; Beach Head, Daley Thompson's Decathlon, 
Gilligan's Gold and Underworld Anything released after 
these will be explained later. 
So first *Hack the BASIC loader. 

KNIGHT LINE 0 LEN 103 7 
0 BEEP 0.1,1: BEEP 0.1,2: BEEP 
0.1,3: BEEP 0.1,4: BEEP 0.1,5: PAPER 
0: BORDER 0 : INK 0:. BRIGHT 1 : CLS : PRINT 
BRIGHT l/INK 0;AT 9,5; 

"LOADING : KNIGHT LORE" ; AT 
1 2 , 1 0 ; " P LEAS E WAI T " 

0 POKE (PEEK 2 3 64 1+25 6* PEEK 
2 3642) , PEEK 23649: POKE { PEEK 23641 r 
2 5 6 * PEEK 2 3 642) + 1 , PEEK 2 3 6 5 0 
0 POKE (PEEK 23613+256*PEEK 
2 3614) , PEEK 2362 7: POKE ( PEEK 2 3 6 1 3 \ 
256* PEEK 23614} +1 # PEEK. 23620 
0 POKE 2 3 6 62 , PEEK 2 3 618: POKE 
23663, PEEK 2 3 619: POKE 23664, PEEK 23621 
23 676 "REM. CLOSE #ATTR . . . . 

fait a minute, there's absolutely no sign of a 
I RANDOMIZE USR command anywhere! There 7 s 
just some BASIC which beeps a bit, sets the colours, and 
prints a message, a whole load of POKEs, and then a load 
of garbage. Surely the computer will do everything, then 
report with an error message as soon as it reaches 23676? 
Well, that's not actually the case Look at the third line 0 
(the one which starts POKE [PEEK 23613 1256* etc.) 
This system variable is known as ERR SP,. What happens is 
that when an error occurs (and it will do here), the 
computer jumps to the value in this register This value is 
PEEK 23627+256*PEEK 23628 PRINT this value, and 
there's the start of the machine code. You might get a 
different result to me, but I made the start address #60A8. 

Disassemble this address. 

60A8 F3 DI 




6 OA 9 FD 25 
60AB FD 7C 



DEC IYH 



60 AD FD AD XOR IYL 

The DI is yery important, because otherwise the I 
register can't be used Given that iY starts off as being 
#5C3A, the value in A will end up being #5B XORed with 
#3 A, which is #61. 

6 OAF FD 2 6 F3 LD IYH, #F3 



60B2 



rr n r~* s~ 

ouau 



A6 LD L'i Is, ffiib 



60B7 

60BA FD E 



54 
3 



r.n nr , 
EX (SP 



3 - FE 5 4 



WT irst of ail, this loads [Y with the value #F3A6. It then 
■ decreases the stack pointer by two By doing this, the 
stack pointer is now pointing to the start address of the 
machine code, which is #60 A8. EX (SP),IY is a variation 
to the register exchange commands we've already come 
across. It basically swaps the value in the address pointed 
by the stack pointer- with the value in the I Y register. So, 
after this instruction, IY will contain #60 AS, and the value 

Ult LUC lO}J Ol tilC SLCl^iS. Will uc ttr mu, 

60BC 21 30 F2 LD HL, #F230 



60BF FD 09 
60C1 01 AC 
60C4 FD 5D 
60C6 FD 54 
60C3 EB 



ADD IY,BC 
. LD BC,#01AC 
L D E , il L 
LD D, IYH 
EX DE , HL 

■J ere, HL is being loaded with #F230. The value in BC 
m I (#FE54) is added to the value in IY (#60 AS), making 
the value in IY #5EFC Then BC is loaded with #01 AC, 
and the value in IY is transferred into DE. Then the values 
of DE and HL are swapped. So, by the end of the code 
we've looked at so far, HL will equal #5EFC, DE will 
equal #F230, BC will equal #01 AC, and A will equal #61 
These values are all used in the decrypter which follows 

XOR (HL) 
LD (DE) , A 
LD (HL) , A 
INC HL 
INC DE 
DEC BC 
FD 6F LD I.YL,A 
78 LD A, B 
OR C 
7D LD A, IYL 
F2 JR HZ, #60C9 
RET 

H his is a straightforward decrypter, except the value for 
ffl A (which is needed throughout the decrypter) is 

tempor arily stored in part of the IY r egister The RET is to 

#F3 A6 (the top value on the stack). 

To crack this, we can set up the register values 
manually, CALL the decrypter, and then hack the main 
loader ourselves Type out this program : 



60C9 A 
6 OCA 1 
60CB 
6 OCX. 
60CD 
60CE 
60CF 
60D1 
60D2 Bl 
60 D3 FD 
60D5 20 
60 D7 09 



7E 
23 
13 
0B 



5B00 F3 
5B01 21 FC 
5B04 1.1 30 
5B07 01 AC 
5 BOA 3E 61 
5B0C CD C9 
5B0F FD 21 
5B13 



DI 
5E 
F2 
01 

60 

3A 5C 



LD HL,#5EFC 
LD DE, #F230 
LD BC,#01AC 
LD A, #61 
CALL #60C9 
LD IY, #5C3A 



PS otice that we've disabled interrupt 
I Band we need to restore the value of IY to #5C3A 
afterwards, so your disassembler won't crash RUN the 
program, and have a look at the code at #F3 A6 . You'll find 
it's just a straightforward headerless loader with absolutely 
no frills, and you should, be able to hack it no problem 
As for the final hack, load the BASIC into address #5CCB, 
run the decryption routine above, patch the SP in the mam 
turboloader to your- POKEs, and start running. 



ZXir QLive Alive! 



Summer 2000 



P| 11 other Speedlock Type Is have the same sort, of 
im decrypter. The code for the decrypter is very 
complicated, with the result that I have been unable to 
reproduce it here. Lucidly, you don't have to touch the 
code; you can write your own decrypter as long as you 
have a Multiface. 

J '11 be doing Tapper as an example, but any other 
9 Speedlock follows this procedure almost exactly. *Hack 
your game and note down the length of the code (you'll 
need it later). 1 made it 1453, which is #05 AD hex.. Now 
look at address #5EFD. The byte at #5EFD is always 
decrypted to give the byte #42, and the byte at #5EFD is 
always decrypted to give the byte #55. The decrypter 
works by XORIng the encrypted byte with a number taken 
from tlie R register By inspecting the code before and after 
running, you'll see the XORing number starts off as #CB, 
and increases by #0A each time. If the result is more than 
#FF, the result has #80 subtracted from it. We can 
incorporate this into our decrypter- The start of the code is 
#5EFD, and the length is (PEEK 23627+256*PEEK 
23628)-#5EFD, which is #01 ED in the case of Tapper. The 
following code will simulate the decrypter 

LD HL, 

LD BC, 

LD D, 
*** LD A, (HL) 

XOR D 

LD (HL) ,A 

LD A, D 

ADD #0A 

SET 7, A 

LD D, A 

INC HL 

DEC BC 

JR NZ, *** 

Once you've done that decrypter, you've got to do the 
whole lot again, starting at #5EFD The byte there will be 
decrypted to either #3E or #ED - you'll have to guess 
which decrypting value to use For Tapper, the start is 
#5F2B, the length is #1BF, and the second decrypter value 
is #AB. 

When you've done that, you'll either get the complete 
loading system or another decrypter. If you've got the 
loading system, then reload the BASIC loader, and do a 
stack trace to find out where it should go You should have 
no problems with the loader. 

If you've got another - decrpyter, go along five bytes and 
find a LD DE,{X.X.XX).. Add #2E to this value, and that's 
where you move it to The length is the same as that for the 
second decrypter The decrypter itself can be cracked by 
changing a JP Z in the code about forty bytes later (the 
value of this is the start of the turboloader), but the 
decrypter itself uses a byte which is worked out by adding 
all the memory together' in the loading system. Since we've 
got an exact copy of this system elsewhere in memory, just 
change the value of XXXX in the aforementioned LD 
DE,(XXXX), and then JP to the start of the decrypter 

8 f the fir st decrypting value you used was #CB, then you 
can just change the JP in the turboloader to your 
POKEs! 

If the value was #CD, then you'll need to know about the 
Standard Speedlock patch Somewhere in the loading 



system there will be the two bytes ED 53 [LD 
DE,(XXXX)]. Change the XXXX to the address of your 
POKEs (#5BA0 is normally safe), and end your POKEs 
with a JP to the value you overwrote. You'll have to use 
this patch for the later Speedlocks as well. 
~J"" here was a Speedlock Type I M'ultiPOKE in YS#79. 
9 RUN the program, press BREAK and disassemble 
address #5B00 to find out what to do in your own hacks 
Type 2 Speedlocks feature a very easy BASIC loader, and 
one big block of code, which has six short decrypters and a 
complex moving routine The decrypters are all easy peasy, 
just move them to somewhere else in memory (such as 
#5B0Q), bung a RET on the end, and CALL the decrypter 
from there (but watch out for the third decrypter, which 
checks for a Multiface and cr ashes if it finds it . The moving 
routine fiddles about with the loader.. Search for 3 i , which 
means LD SP,XXXX. Hopefully, you'll find a LD 
SP,#0000, with perhaps a DI right before it. Write down 
the address and run die moving routine (you may have to 
restart, the tape, because some of the moving routines insist 
on a signal coming into the tape recorder). Use a stack 
trace to find out where the code has gone to. Now you can 
move all the code from the moving routine to the end of the 
machine code block to where it should be, given that you 
know where the LD SP,#0000 goes to Once moved, patch 
the loader in the same way as the first Speedlock . 
W ype 3s have just one long BASIC loader, with about 
m 144 decrypters, but that's nothing to worry about 
*Hack the BASK"; loader, and have a look at the first bit of 
code which moves the rest of the code into the right place 
(you can then use a headerless loader to load this into the 
.right place in memory). The tricky bit is changing a byte in 
memory so a CALL to the loading system at the very top of 
the code is changed to a CALL somewhere else once all the 
decrypters have been run The only way you can do this is 
to change the address of the hi byte of this CALL to 
something else, and RUN the huge load of die decrypters 
The computer wilt crash if you have a Multiface attached, 
but oniy after everything's been decrypted, so then look 
and see what the CALL'S been changed to [fit's suitable, 
remember the patch, position your hack, around this, change 
the CALL to what it should be, and put in the usual 
Speedlock patch. Look at the start address in the 
turboloader This address will be overwritten by a decrypter 
once loading finishes. This decrypter is nothing special, so 
just crack it as usual, and watch out for the game moving 
around. 

Jon North's Pokerama Tapes usually have a Speedlock 
Type 3 crack on it - load up the Pokerama, choose your 
POKE, then do a stack trace to find it and have a look at it 

Pert 1 - Eplcpia 

S 8 jell folks, I'm sorry to have to break this to you, but 
■JLJ I've just about told everything you should ever need 
to know to crack every protection system under the sun So 
I'll just say some final words and credits, and then sign off, 
okay? 

The idea of this book, its production and its writing were 
done entirely by Richard Swarm, from February to June 
1992. 



ZXir QLive Alive! 



Summer 2000 



ionie suggestions and tips came from two people to 
Uiwhom this book is dedicated, Matt Corby from "dowrt- 
the-road", and Niait "Mr Incredibly Technical 7 ' Daley. 
Thanks, guys! 

f hanks to YS for putting disassemblers and the like on 
9 recent covertapes; it saved me the trouble of writing 
one! 

Thanks to Jon North for some of the info on hacking he 
gave to me on disk recently - much appreciated, mate 

Thanks for YOU for buying this There aren't many 
Speccy hackers around right now, so we need to make 
the numbers up. Good luck! 

1 } hat's that? "I don't understand this bit at all!" 1 hear 
I you say Well, send me any queries that you may 
have about this book, stating exactly what the problem is, 
along with an SAE (very important that), and ['11 do my 
best to reply to them. DON'T write to me asking me to 
hack a whole list of games for you - I just haven't got the 




time. However, I've got a big book of Multiiace POKEs 
which you can obtain for □ 1 .50 and an A.4 SAE if you 
want it, so that might come in handy 
"jC"h.ought for the year': Seven years ago, Spectrum and 
M Commodore owners were at each other's throats 
Spectrum owners would vow never to have anything to do 
with Commodore. Then why do I hear of so many 
Spectrum owners that have upgraded to a Commodore 
Amiga? Personally, 1 can't stand the Amiga's operating 
system - it's terrible! 

| ■ | ell, that seems to be about it, so Til just leave you 
lAlknow in the hands of a glossary of terms. Happy 
hacking! 

Richar d Swann - June 1992 

im Efia 

[C] 1992 NSA Publications. No part of this book may be 
copied, otherwise I'll send the Mafia round. Okay? 



Msiiiory Improves With Age 



by the late William Pedersen 



Crazy? Perhaps so, but survival of our 
favorite antique TS2068 computer depends on it 
to a degree. Two advances are primarily 
responsible for this. Both extend the amount and 
speed of available memory, over and beyond that 
in the DOCK bank. 

Disk Drives improve speed, accessibility and 
convenience over tape recording. 

RAMD1SK has broken all speed records and 
has expansion possibilities which are impressive. 
Now all we need to do is find some way to bank 
switch additional memory, it has been said it can 
t be done because Timex expertise has been 
dispersed - dinosaur chips ! 

While it is true that the system Timex 
intended (before killing it) is highly complex it is 
NOT the only system which works. The one 
described in Figures 1 and 2 is just about the 
minimum bank switching system. There are a Jot 
of features like handling interrupts and auto- 
configuring that are beyond it, but it can address 
16 megabytes of memory and works with the 
unmodified TS-2068. 

Memory Bank (fig. 2) 

There is nothing particularly special about 
this memory bank. It decodes a 24 bit address and 
has a dip-switch to locate 64K of contiguous 
memory space at any 64K boundary. 

if any of its memory is active, it drives the 
BE signal low to disable LOCAL banks (HOME, 
EXROM and DOCK). With this system it is 
impossible for two expansion banks to be on the 



bus at the same instant. (See Appendix A for 
greater detail ) 

System Configuration 

There must be some way to MAP ail or part of 
memory. 

The simplest way to do this is to write 
programs which assume continuous memory up 
to a variable limit, and warn you when that limit 
is exceeded. For this, each expansion bank should 
have dip-switches set from 1 to MAXBANK in 
sequence. 

There are better ways which allow unused 
available banks to be switched around where 
needed; saving $$$$. This needs some 
programming overhead, but you have room for it. 
Auto Configuration 

This is where the computer is programmed to 
go out to explore the neighborhood. Whatever it 
finds is recorded into a system configuration table 
(SYSCON) for later reference.. This is not easy? 

A dumb device cannot be found because it 
cannot answer a roll-call, it is deaf to attention- 
getting methods. It can be made visible by 
attaching a baby-sitter chip which can respond 
and identity itself and the attached device. 

A smart device listens, answers, and often 
calls for attention. Still it must also accept an 
order to shut up so it won't interrupt. The 
IEEE488 system is a system for standardizing 
command language between widely different 
computers and devices, but it is still not smart 
enough to keep quiet when another device with 



ZXir QLive Alive I 



14 



Summer 2000 



the same "name" is on the system bus. 

Duplicate names can be resolved if they 
are at different addressable locations. In this 
ways one of the names can be changed to 
avoid future confusion and wasted time. It 
only needs to be done initially, or when some 
outside event has created another duplication 
(Like turning on a disk drive). 

A daisy chain (USB) is one way to resolve 
the unique address problem. 

Another common method is to give back- 
plane slots an address on a temporary basis, 
(perhaps expandable using a daisy chain) 

Both methods assume something about the 
design of the connecting network. It must 
guarantee reaching only one device at a time. 

Networking 

Almost by definition, a network is where 
Murphy lives. Frequently the unexpected 
happens. No more than three points will be made 
here. 

1 Statistical methods must be used to find 
time slots when bus confusion is absent by 
chance. 

2. If this works, there is no need for 
physically unique addresses, though default 
names still help. 

3. Any device connected to a network can 
help by introducing a 3 random delays to that 
natural to the system 

Bank Switching 
A bank switching controller (BSC) is essentially a 
network switchboard. The TS2068 operating 
system expects eight equal 8K wide channels 
assigned arbitrarily to chunks. 

The Z80, like most CPUs, has channels to 
internal registers; and internally swaps between 
register sets. It is a bank switching controller 
itself 

Machine code includes extended addressing 
provided by additional fetched bytes. Prefix bytes 
allow instruction sets to be bank switched. 

The 8088 CPU used in the IBM PC and 
clones has four dedicated internal bank switching 
registers whereas the Z80 has none. This 
idealistic approach for the 8088 worked like a 
charm until it ran into deep water. It outgrew its 
island and couldn't build a boat. External 1 v. bank 
switching registers do not have these limitations. 



The BSC in Figure I is similar to the one inside 
the 8088, but there the resemblance ends. It has 
eight channels instead of four, and can address 
sixteen times as much space. 

There are better BSCs than the one in Figure 
1, but this one does a powerful job. It also 
requires no alteration of your precious TS2068, a 
good compromise. 

Bank Switching Operation 
The most significant three bits of Z80 address 
space are used to select one of eight previously 
established address extension bytes in a current 
chunk owner table (CCOT). The remaining bits 
address locations within each 8K channel. When 
power is first turned on, and at other times when 
the TS2068 needs exclusive control, CCOT must 
be turned OFF. Turning it ON could be a 
problem. 

Fortunately we can first assign all eight 
channels to HOME. The extended address is 255 
for which nothing usually responds. Then nothing 
happens when CCOT is turned ON. (The 
"usually" reference is explained later.) 
With CCOT turned OFF extended address bits 
float, unless something is connected to force 
them high. In effect, the OFF condition also gives 
255 for the extended address. That is exactly why 
HOME bank was assigned thai bank number 
Bank Switching Control 

Except during power-up there is no safe 
place in physical memory to put bank switching 
code. Onlv the fetched instruction in the Z80 is 
immune. That instruction must be able to find the 
BSC regardless of memory assignments. It must 
use I/O (another example of Z80 bank switching). 
Because GO TO and CALL are not I/O 
instructions, and the machine stack is unsafe 
anyway, each bank chunk using these needs to 
support them with MACROS having the same 
effect. The same applies to the RETurn 
instruction. 

The most elegant method avoids using these 
by continuing the code in the shadowing bank 
and leaving the chunk with the current machine 
stack untouched. 

This flexibility is what makes multitasking 
and multi-user time sharing systems remarkably 
easy to create. Each user can have his own private 
partition under control of a SUPERVISOR. 
Security from program interference remains a 



ZXir OLive Alive! 



15 



Summer 2000 



problem with the Z80, not like other CPUs which 
provide privileged instructions. Certain 
programming conventions will have to be 
followed to compensate for this. 

There is great pressure to reserve one chunk 
to one bank to hold the system variables 
(SYSVARs), machine stack and bank switching 
routines. This is the technique used in the relics 
of machine code remaining in the unmodified 
TS2068. If repeated in each user's partition, this 
is a good convention to use. it should be 
remembered that it is still a convention, and need 
not be followed. 

The relics use memory mapped bank 
switching ports. Unless these port addresses are 
forbidden to be used in all banks, it doesn't work. 
The BUG consists of stacking the port byte from 
one bank and restoring it in another, thereby 
destroying it in the new bank. There is a way to 
switch stacks to resolve this problem, but is too 
complex for serious consideration. 

Global SYSVARs can be stored in I/O space, 
so this is not a real difficulty . The same applies to 
a bank switching stack run by the MACROS 
already mentioned. An alternative for the bank 
switching stack is to dedicate a fixed bank and 
chunk for it, though this has the problem of not 
remaining safe from accident. 

Some of this does not apply to the BSC in 
Figure 1. It has been included to show what can 
be done with a more advanced version. 

Control is simple. This BSC is write-only. It 
has eight ports of which only four are presently 
used. The port assignments avoid those to which 
the ZX and TS2040 printers respond and all 
known physical interface ports like the MODEM, 
AERCO, LarKen, A&J, and TASMAN. 
PORT D ATA FUNC TION 

132" x Turn CCOT OFF 

1.33 k Turn CCOT ON 

134 Bank! Owner to be posted 
to CCOT 

135 "HS" CHUNK mask, active 
LOW . 

Bank # is identical to the extended address byte. 
OUT 1 34, Bank # writes the bank number into a 
register which maintains it as input to CCOT. 
"HS" is the "'Horizontal Select" described by 
TIMEX. Looking at the structure of CCOT, it 
makes sense 



OUT 135, HS latches the stored Bank # into 
CCOT registers for which HS bits are active 
LOW. 

Some of the more significant bits can be 
ignored in smaller systems, which explains why 
EXROM is Bank # 254 and DOCK is Bank #0. A 
system using only the lower nibble can still 
address 1 megabyte of memory. 

Control can be safer from accident by using 
one of the unused ports to act as "Simon Says". 
This was the real purpose of the Timex Reset 
Nibble Sequence bank switching instruction, 
though never explained. 

Exceptional Conditions 
Bank numbers from 1 through 253 are gravy, but 
what about HOME (255), EXROM (254), and 
DOCK (0)? Can they be implemented as real 
external banks? The answer is definitely yes, with 
some limitations. 

HOME ROM can be replaced with EPROM 
at the drop of a hat. An almost trivial case is 
replacing it with SPECTRUM ROM. What is 
NOT trivial is the resulting SPECTRUM having 
bank switching capabilities! Repairs to the 
TS2068 ROM code can be made in EPROM with 
impunity. Unlike other banks, bank 255 is active 
immediately at power-up. Because SPECTRUM 
is a subset of TS2068, it remains a toy with which 
to play. 'The real power lies in installing upward 
compatible extensions to BASIC and to restore 
TIMEX disabled functions like OPEN, CLOSE, 
RESET and CATalogue. 

EXROM cannot be directly replaced without 
removing it from the case, and even then, it is not 
available during power-up. The problem with 
internal EXROM is that it is incompletely 
addressed so an image of it appears in all chunks, 
not just chunk 0. 

The addressing problem can be solved by 
moving the chip to a special card which plugs 
into the cartridge slot. This card doesn't change 
anything except to provide full addressing to 
suppress the false images. Of course, if EXROM 
is replaced with EPROM you can make repairs to 
code. In any case, you now have chunks 1 
through 7 of Bank # 254 (enabled by EXROM 
signal) which you are free to use. On the 
expansion bus Bank # 254 will have priority over 
this, but it is not active during initialization. 

DOCK is usually enabled by the ROSCS 



ZXir QLive Alive! 



16 



Summer 2000 



signal available at the cartridge slot. If you 
relocate it to the expansion bus as Bank # O. it 
has priority when ON, or can act the same 
because the ROSCS signal is available on the 
expansion bus. 



Figure 1: Bank Switching 



Write Port Decoding 



m — — — — ■ 

si 

83 _______ 

«4 — kirn uccb^+su 



2 \k i wCrtS- ME132 - (P - 



4d*2 tu]_4 i w_i33 - ON" 



i!5 

loin - Adn 
a? — S,- ' 



oab 15 -- 

— i * ^ 

02 P " 

03 b u 



JL-i 



iEi u 03i_ J2 -«Ei34 - SELECT n 

; r 2 qo? osb^wwi - (NO ji 
llj^dcND Seb^-w-i^-cNC) i 
" "His" r Wl«-(HC) || 

u 



external higher priority back-plane cards. When 
this is done, EXROM and DOCK are no longer 
mutually exclusive. 

Summary 

While the Bank Switching System described in Figures 1 
and 2 has limits on what it can do, it should start a 
revolution. It is simple enough to understand, uses easily 
obtainable parts, and any reasonably competent hardware 
hacker can build it. It doesn't put your TS2068 at risk, and 
even if EXROM is relocated, there are no wiring changes 
internally so you can always put it back. 

A lot of mental sweat went into creating this version 
The main reason for it is to give the user confidence that it 
can indeed be done as advertised Perhaps later someone 
will actually believe that a lull self-configuring system 
actually exists (which it does) 

It nevertheless is one giant step for the 

TS2068. Once Taken — Watch Out! 

(C) 1987 William J. Pedersen WIDJUP 




If you have no back-plane, the EXROM 
relocation card is the perfect place to include 
replacement HOME ROM using a technique 
described in another article for recovering the 
ROMCS signal logically— as it is not available at 
the cartridge slot. 

For the same reason, this card should carry a 
replacement card edge connector 60 you can still 
use your cartridges. 

Should you desire, once the system has been 
initialized, and you DO have an expansion bus, 
even these replacements can be replaced by the 



uuu n_u.i__u a. x vU-Cl irtliU 



[Nste.'ftetwrs em to ana mx 
| of Sftfl and iraSj out if 
SOW is i»r«sent, at least 
CHUNK W shout* _e ROM. 

<&mttj«s mm mimnw.) 



17 



Summer 2000 



mm m m m _g 

y n C ! 3 S S § I 1 © u 



Ads 



Place your a cl s here, it is free! 

Maii/E-maii to: A. KAHALE 3343 S FLAT ROCK CT SIERRA VISTA AZ 85650-6874 

Please inform and/or update the Editor of any changes in your ad/s 



cme Electronics 

Servic© 

We have been a part of the Sinclair scene since 1982, repair ing 
ZX Spectra ms for Sinclair Research in England. 
We provide Sales, Service, and Software for the 

QL, Spectrum, ZX-81 and Z88, 

www. members/tripodxoin/'hescomputing/hes 1 ..html 

E-Mail 7460 1 . 1 .53 5@compusei-ve.com 
Hours of Operation is Monday - Friday 1300 hrs. io 2 100 
Ins. central time zone 
Phone 210 661-4376 
John R. Rfsh 
Home Electronics Service 
5222 Kazen Dr. 
San Antonio IX 78219 USA 



i 



Bill Mathis 

liipfsil Electronics 

323 SE 28th Ave. 
Portland, Oregon 97214 
503-232-3200 



*ro Act Co n & u lt ingj Inc 

2660 N. Houghton Rd. 
Tucson, AZ S5749 
520-749-5395, fax 520-749-3626 
email <proacirnd@aQl.com> 

"fill'© o tin O 1 1 S3 f Co* 



11601 Widbey Dr 
Cumberland IN 46229 

The John Oliger Floppy Disk System 
f o r the 7s-2q68 

Expansion Board 
2068 User Cartridge 
Disk Boards "A." ■& "8" 
2068 Parallel Printer Port 
2068 EPROM Programmer 
2068/SPECTRUM Joystick Port 

Hi 

DFh Mapped Universal I/O Port board 
User Manual only : $5,00 (Read before you buy) 

joliger@miiidspring.com 



PLATYPUS} 

SOFTWARE 



\ tm 



mm 



QLAMBer $20 

QLuMSi $20 

SeekQL $ 10 

Upgrades $5 

914 Rio Vista Cir SW 
Albuquerque NM 87105 
(505) 843-8414 



i 



Make David Leech an Offer 
ZX-81/TS-1000 TS-2063 Hardware Kits 
Real Time Clock I/O Controller RS-232 
Centronics i/F 1 6K & 64K RAM 300 BAUD 
Modem A-D Converter(assembied) 

536 Long Ter 
Leesvflle SC 29070 



ZX-TEXT - Word Processor 
ZX-CALC - Spreadsheet 
Business Software 
Cycle Accounting Financial Report Generator 

2X-CALENDAR - Time Management 
ZX-81 TS-1000 TS-1500 TS-2063 
Albert F, Rodriguez 

A s F a R, Software® 



1605 Pennsylvania Ave 204 
Miami Beach FL 33139 





ARCHIVE Based QL Software 

QLerk - A complete financial program for the QL 

QLerk software (v3.21 ) with tutorial $29 

QLerk manual $29 

QLerk software & manual $50 

DBEasy - A menu based database system 

DBEasy software (v1 ,6) $24 

DBEasy upgrade from V1 .5 $7 

DBProgs - A toolkit of ARCHIVE procedures 

DBProgs software (v1 8) $18 

DBProgs upgrade from VI 7 $7 



ZXir QLive Alive! 



18 



Summer 2000 



DBTutor - A general purpose learning program 

DBTutor software! vi .5) $1 2 

PC DBEasy - Just like QL DBEasy 

PC DBEasy software (v1 .3) $12 

Bill Cable 
Wood & Wind Computing 

RR3 BOX 92 
Cornish NH 03745 USA 
Phone (603)675-2218 

810 254-9878 

auy s.u ^o,oUu upS 
Supporting a!! Sinclair and Tsrnex users Fsdonet Echomail 

arefor Sinclair computers. Lots of new files for you to 
download such asTS-2068 emulator for those who use a 
PC give us a call and let us know what you want to 
see Jvlessaae and file areas 
QL Internationa}, Quanta, QL Hackers journal, Spec- 
trum/2068, 2X-81/TS-1000, Z88, NetMaii, emulators, 
pointer, FOFormatfor QXL/QDOS, etc. 
Sysop John *J impeliizzeri 
Co-Sysop Oora Waiferman 
Utica, Michigan, USA 



I) c m I ii c 



c 



U: 



! 1) € § 



Hardware & Software 
352 7 th Ave. 15 th Fir. 
New York, NY 10001 

Phone 212 631-7563 

Fax 212 947-5069 Voice mail pager 917 490-8407 
Domino.cubes@excelsior.net 



AS I 



A^/ .11 u ii liLiLg news letter 

I 'Ike Long Itslamel S i TClaar/l'aiiiex Users Oroup 

Robert Malioy, Treasurer 
412 Pacific St. 
Massapequa Park, NY 11762 



E Q La fUf C? 




New England Sinclair QL Users Group 
Ed Kingsley, Editor 
16 Highland Avenue 
Saugus MA 01906 



} ZOO-OO/ I 



EdK4@aoi.com 




i 



All O T O « « « 

v3 U. || Lt U i L 1 ii g .r*, » i. \£ i i i' g i <t l&i ill. Ci 3 

Timothy S wen son . 

2455 Medallion Dr. 
Union City, CA 94587-1 91 4 
swensontc<5>aeocities.com 
http : //www. geoci ties . com/S i i conVa fiey/P i nes/5865/ 

Aiec Carsweii 

Motivation 

16 Montgomery Ave 

wiu » n.viouiiu ( \r\ t \j is — <_ 

United Kingdom 

The Ksnntop 

Newsletter 

The Greater Cleveland T-S User Group 

Thomas Simon Editor 

615 School Ave 
Cuyahoga Fails OH 44221 
E-Mail CSS 73177,333 
Jon Kaczor Production 
4568 Williamson Ave 
Brooklyn OH 44144 
75363. 1 1 27 ©Compuserve, com 



Peter Liebert-Adelt 
LUETZOW STR 3 
D-38102 BRAUNSCHWEIG 

GERMANY 
Email: p.iiebert@t-oniine.de 
http //home . t-online, de/home/p liebert/zx- team, htm 
Amateur Radio. PK4BF@DB0FC.#NDS.DEU.£U 

The ZX Spectrum 48/i2S Emulator 
for IBM & Compatables: Z30 Version 

Turn your PC into a real ZX Spectrum 48/128 
=>- Full Spectrum emulation, border, flash, beeper, interface 1, 
Microdrive in cartridge file, RS232 input and output redirection 
to file, COM or LPT, joystick support, 128K sound through 
Soundblaster or internal speaker, built-in monitor, 
=>- Able to load ANY, even protected or speed-saved program 
from tape, to save to tape, to redirect tape loads and saves to 
disk for easy file access, 
•=>■ 25G0 sine English documentation. 

Runs okay under DOS, Windows and DesqView, 
=>- Full source code of emulator and utilities included! 
Runs on any 640K PC; too slow for practical use on PC/XTs 
but fast enough on ATs, uses VGA/EGA/CGA or Hercules. 
This program costs US $20. You will receive a 3. 5 s DD disk 
(5,25" disks on request), and you'll be kept informed about up- 



ZXir QLive .Alive! 



19 



Autumn 1999 



f 



dates. Please send bank notes (bills), name and address to: 

Gerton Lunter 

PO Box 2535 
NL-9704 CM Groningen 
Netheriand 

heck, please add US $1 5 extra and allow 4 weeks for d elivery. 



Jtoclwi M«erz Scffware 

Tfte Fully Functional ROM Disk 

SMSQ/E for the QXL 

SMSQIE for the Super GoidCard 

QL Games Sl Upgrades QL Applications 
ProWesS + Applications 
Jochen Merz Software 
Im stlilen Winke! 12 
47169 Duisburg, Germany 



Fax 0203-502012 



Credit Cards accepted 

http://www.j -m-s.com/smsq/ 



e-mail sms 

SSSSSSSSSSSS 



-m-s.com 





01- Today is published by Jochen Merz Software. Jochen 
Merz has been supplying software for the QL for several years 
and has built up a good reputation for quality and fair trading 
The representative in Britain is Miracle Systems Ltd who take 
subscriptions and. do the distribution. 

English Office 

Miracle Systems Ltd. 
20 Mow Barton 
Yates, Bristol 
United Kingdom BS17 5NF 
Tel. -441454 883802 Fax. -44 1454 883602 

Editor 



$30 Plus $10 for S/H 

TS-2040 Printers 16 K RAM 
We Do Not Ship Outside The US & Canada 
Checks, Money Orders and Visa or Mastercard 
Call 2 i 2-675-84 1.4 FAX 2 12-675-8980 

New York, NY 10001 

Shipping is by UPS ground. 
Basks of Times Sinclair 1500/1000 BASIC 
BASIC Basics for the Timex/Sinclair 1500/1000 
The ins and Outs of the Times TS-1000 & ZX-81 
Computer interfacing Technique in Science TS- 1500/1000 
ZX-81 BASIC Programming (in Spanish language) 

Sinclair Resources 

John McMichael (Developer - Graphics) 
1710 Palmer Dr 
Laramie WY 82070 

Keith Watson (AERCO & Z80 Emulator) 
41634 Amberly Dr. 
Mt. Clemens, Ml 48038 

Rod Gowen (RMG) 
14784 S Quail Grove Cir 
Oregon City OR 97045-8843 

Send them a LSASE and ask for information about 
their current products and/or services. 

iB W S ■ : ■ i » » 

TP/** InifiKiiiiiPif ' 

JOHN J SHEPARD III 



Dilwyn Jones 
41 Bra Emrys 
Tal-Y-Bont, Bangor, Gwynedd 
United Kingdom LL57 3YT 
Tel. +44 1248 354023 Fax. +44 1248 354023 

Items for the TImex\SInciair Computer 

Timevvorks Programming kit #1 For T/S 1000&ZX81 $4.95 
Mindware Gulp Game Timex 1000 & Sinclair ZX8 1 $4 95 
Timex Horace & The Spiders for the 2068. $5.95 
Chess ( 1 6K RAM) qty 5 price $2 95 ea 
The Challenger I qty 1 7 price $2 95 ea 
Mindware MW 100 plain paper printer for the TS 1000 or 

ZXSi computer made in the US $45 00 
All items are new. Please add $3 .95 shipping to all orders. 

ivIC, VISA, American Express, phone 717-748-1747 
Keith Electronics 
224 North Grove St 
Lock Haven, PA. 17745 



1 30 th 



T 

1 



OGDEN IA 50212 
< jshepard@netins.nei > 

Mostly QL & TS-2068 



JACK BOATWRiGHT 
67325 FRYREAR RD 
BEND OR 97701 
< jboatno4@ouffawnet.com > 

Mostly ZX-81 /TS-1000 & TS-2068 



TS-2068 ZJC» 



Soft war 



ZXir QLive Alive! 



20 



Autumn 1999